Image processing apparatus, image processing method, and storage medium

ABSTRACT

The image processing apparatus obtains a degree of variation in signal values of a plurality of pixels included in a region of a predetermined size that includes a pixel of interest of image data obtained by reading a document on which a halftone-processed image has been printed, obtains a feature amount indicating a brightness of the region. The apparatus updates a difference between the obtained feature amount and an index value corresponding to the obtained degree of variation in accordance with whether or not the difference is larger than a predetermined threshold, with respect to a plurality of index values respectively corresponding to a plurality of mutually different degrees of variation, decides a correction value of the pixel of interest using the updated difference and the index value, and corrects a value of the pixel of interest using the decided correction value.

BACKGROUND OF THE INVENTION Field of the Invention

The present invention relates to an image processing apparatus, an imageprocessing method, and a storage medium.

Description of the Related Art

Conventionally, in scanners, copying machines, multi-functionperipherals, and the like, when a document is read by using an imagereader mounted thereon, problems of “show-through” may occur. This“show-through” is where, when one side (e.g., the front surface) of adocument is read by an image reader, an image of the side (e.g., theback surface) which is not read is captured in an image of the frontsurface. This mainly occurs when an image is printed on both sides(front surface and back surface) of a document to be read. Thisshow-through tends to occur with a high density portion on the surfacewhich is not being read, and occurs due to the amount of light of alight source at the time of reading and the degree of thickness (adegree of transparency of light) of the read document. When thisshow-through occurs, the image data of the read document (copiedmaterial) becomes difficult to see, and the quality of the image data ofthe copied material deteriorates.

Therefore, as a technique for correcting so as to reduce theshow-through, conventionally, the show-through is made to beinconspicuous by lowering the density of the document as a whole (bystrongly operating a so-called background color removal function).However, in this case, it has been difficult to remove only theshow-through component from an image that includes a show-through regionwhich occurs overlapping with a front surface image.

Therefore, for example, in Japanese Patent Laid-Open No. 2015-171099,the luminance variance and the luminance average of certain region thatincludes a pixel of interest are obtained, and, for each luminancevariance, the brightest luminance average is stored in the LUT.Correcting pixels in a region of the same variance by using the storedluminance average has been proposed. This process focuses on the factthat within the same halftone dot pattern of image data, there is nodifference in the luminance variance between a show-through region and anon-show-through region, but there is a difference in the luminanceaverage (the luminance average of the show-through region is lower).That is, the characteristic that components of show-through region areunlikely to be represented as halftone dots when viewed from the frontsurface, and it hardly affects the luminance variance is used. In thisway, by correcting pixels using the stored luminance average for thesame variance region, a process of removing only the show-throughcomponents from a show-through region which occurs overlapping with thefront surface image is realized.

In recent years, however, due to cost reductions, impurities indocuments has become conspicuous in pamphlets and business journals. Theimpurities are specifically minute substances included in the documentother than images formed by toner, and are, for example, paper fibersincluded in the document. Therefore, when the luminance variance for acertain range that includes an impurity is calculated, the luminancevariance changes due to the influence of the impurity. In other words,luminance variance occurs even for a paper white region (a regionwithout an image) in which the luminance variance should become zerowithout impurities.

Therefore, when the technique described in the above-mentioned JapanesePatent Laid-Open No. 2015-171099 is applied, the luminance average of aregion that contains an impurity is stored in an LUT, and a correctionis executed by using this luminance average, and there is a problem thata false correction of the show-through region is generated.

SUMMARY OF THE INVENTION

An aspect of the present invention is to eliminate the above-mentionedproblem with conventional technology.

A feature of the present invention is to provide a technique capable ofcorrecting a show-through region by appropriately removing onlyshow-through components even if there is an impurity in a document.

According to a first aspect of the present invention, there is providedan image processing apparatus, comprising: a memory device that storesinstructions; and at least one processor that executes the instructionsstored in the memory device to cause the image processing apparatus tofunction as: a first obtaining unit configured to obtain a degree ofvariation in signal values of a plurality of pixels included in a regionof a predetermined size that includes a pixel of interest of image dataobtained by reading a document on which a halftone-processed image hasbeen printed; a second obtaining unit configured to obtain a featureamount indicating a brightness of the region; an updating unitconfigured to, with respect to a plurality of index values respectivelycorresponding to a plurality of mutually different degrees of variation,in accordance with whether or not a difference between the featureamount obtained by the second obtaining unit and an index valuecorresponding to the degree of variation obtained by the first obtainingunit is larger than a predetermined threshold, update the difference; adecision unit configured to decide a correction value of the pixel ofinterest using the difference updated by the updating unit and the indexvalue corresponding to the degree of variation; and a correction unitconfigured to correct a value of the pixel of interest using thecorrection value decided by the decision unit.

According to a second aspect of the present invention, there is providedan image processing method, comprising: obtaining a degree of variationin signal values of a plurality of pixels included in a region of apredetermined size that includes a pixel of interest of image dataobtained by reading a document on which a halftone-processed image hasbeen printed; obtaining a feature amount indicating a brightness of theregion; with respect to a plurality of index values respectivelycorresponding to a plurality of mutually different degrees of variation,updating a difference between the obtained feature amount and an indexvalue corresponding to the obtained degree of variation in accordancewith whether or not the difference is larger than a predeterminedthreshold; deciding a correction value of the pixel of interest usingthe updated difference and the index value corresponding to the degreeof variation; and correcting a value of the pixel of interest using thedecided correction value.

Further features of the present invention will become apparent from thefollowing description of exemplary embodiments with reference to theattached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate embodiments of the invention and,together with the description, serve to explain the principles of theinvention.

FIG. 1 is a diagram showing an external appearance of a copying machineaccording to an embodiment of the invention.

FIG. 2 is a schematic diagram for describing a main configuration and areading operation of a scanner according to the embodiment.

FIG. 3 is a diagram for describing the hardware configuration of amulti-function peripheral and the entire system that includes thecopying machine according to the embodiment.

FIG. 4 is a block diagram for describing a configuration of a scannerinterface image processing unit according to an embodiment.

FIG. 5 is a block diagram for describing a configuration of ashow-through correction unit according to an embodiment.

FIG. 6 is a block diagram for describing a configuration of avariance-average storing control unit according to an embodiment.

FIG. 7 is a block diagram for describing a configuration of a writevalue calculation unit according to an embodiment.

FIG. 8 is a diagram for describing an example of read image data of afront surface of a document read by a scanner according to anembodiment.

FIG. 9 is a diagram showing a relationship between a variance and anaverage of luminance values of read image data.

FIG. 10 is a diagram showing an example of an LUT generated by avariance-average storage unit according to the embodiment.

FIG. 11 depicts a graph view showing a relationship among a halftone dotratio, a variance, and an average in a halftone dot image.

FIGS. 12A to 12C are diagrams illustrating an example of updating avariance-average storage unit (an LUT) in an embodiment.

FIG. 13 is a flowchart for describing a show-through correction processin the copying machine according to the embodiment.

FIG. 14 is a flowchart for describing the process of writing to a LUT ofstep S1306 of FIG. 13.

DESCRIPTION OF THE EMBODIMENTS

Embodiments of the present invention will be described hereinafter indetail, with reference to the accompanying drawings. It is to beunderstood that the following embodiments are not intended to limit theclaims of the present invention, and that not all of the combinations ofthe aspects that are described according to the following embodimentsare necessarily required with respect to the means to solve the problemsaccording to the present invention.

FIG. 1 is a diagram showing an external appearance of a copying machineaccording to an embodiment of the invention.

A scanner 140 converts information of an image on a document into anelectric signal by inputting reflected light, which is obtained byexposing and scanning the image on the document in accordance with lightemission of an illumination lamp, to a linear image sensor (CCD sensor).The scanner 140 further converts the electric signal into a luminancesignal composed of R, G, and B colors, and outputs the luminance signalas image data to a controller 200 (FIG. 3) which is described later.

The document is set in a tray 142 of a document feeder 141. When a usermakes an instruction via an operation unit 160 to start reading thedocument to the scanner 140, the controller 200 sends a document readinstruction to the scanner 140. Upon receiving this instruction, thescanner 140 feeds the document one sheet at a time from the tray 142 ofthe document feeder 141, and performs a reading operation of thedocument. The document can also be read by placing it on a platen glassdescribed later.

A printer 120 prints an image based image data received from thecontroller 200 onto a sheet. An image forming method in the embodimentis an electrophotographic method that uses a photosensitive drum, adeveloper, a fixing unit, and the like. This is a method of transferringtoner which has been caused to adhere to the drum to a sheet, and thenfixing the toner to the sheet. The printer 120 also includes a pluralityof sheet cassettes 121, 122, and 123 that can handle different sheetsizes or different sheet orientations. The printed sheet is dischargedto a sheet discharge tray 124.

FIG. 2 is a schematic diagram for describing a main configuration and areading operation of the scanner 140 according to the embodiment.

A document 100 to be read is placed on the platen glass 211. Thedocument 100 is irradiated by an illumination lamp 202, and thereflected light passes via mirrors 203, 204, and 205 and forms an imageon a CCD sensor 207 in accordance with a lens 206. A first mirror unit209 which includes the mirror 203 and the illumination lamp 202 moves ata speed v, and a second mirror unit 210 which includes the mirrors 204and 205 moves at a speed v/2 to thereby scan the front surface of thedocument 100. Movement of the first mirror unit 209 and the secondmirror unit 210 is performed by rotationally driving a motor 208. Thereflected light inputted to the CCD sensor 207 is converted into anelectric signal by the sensor 207, and the electric signal of a pixel isconverted into digital data by an A/D converter (not shown) and inputtedas a pixel signal Din to the controller 200, which is described later.

The scanner 140 can also read a document in accordance with a “movingdocument reading operation” that reads a document the document feeder141 being caused to operate. Firstly, the document 100 in FIG. 2 isplaced on the tray 142. Then, the document is first conveyed from thetray 142 by the drive roller 201 onto the document feeder 141 passing bythe surface of the platen glass 211, which is under the drive roller201. In such a moving document reading operation mode, the opticalsystems such as the first mirror unit 209 and the second mirror unit 210are set at fixed positions and are not moved. In particular, the firstmirror unit 209 is fixed at a position under the drive roller 201. Thus,the document conveyed under the drive roller 201 in accordance with thedrive roller 201 is read. In this moving document reading operationmode, since the document is only moved in a fixed direction, a largeamount of the document can be consecutively read at high speed.

Here, with respect to the document 100, there are cases where some kindof image such as a photograph, a graph, or text is printed not only onthe front surface (the surface irradiated with light by the illuminationlamp 202) of the document 100 to be read but also on the non-readsurface (the back surface). At this time, “show-through” may occur inwhich an image on a surface (back surface) which is not read affects theread image data of the front surface. This can occur with any of thereading schemes described above. The degree of show-through variesdepending on the thickness (light transmittance) of a medium such aspaper of the document 100 and the amount of light irradiated by theillumination lamp 202. Generally, there is a greater degree ofshow-through the thinner the paper is for the document, and the greaterthe amount of light irradiated. In addition, there is influence from thedensity value of the image printed on the back surface, and show-throughis more likely to occur if a high density image is printed on the backsurface.

FIG. 3 is a diagram for describing the hardware configuration of amulti-function peripheral and the entire system that includes thecopying machine according to the embodiment.

The controller 200 is connected to the scanner 140, the printer 120, aLAN 314, and a public line (a WAN) 311, and controls the operation ofthe copying machine as a whole, and controls the input and output ofimage information and device information.

A CPU 301 is a processor that controls the entire copying machine, andexecutes a control program or the like deployed from a HDD 304 to a RAM302 in accordance with a boot program of a ROM 303 to control access tovarious devices in a comprehensive manner. Further, the CPU 301comprehensively controls various image processes performed by thecontroller 200. The RAM 302 is a system memory, and is also an imagememory for temporarily storing image data and the like. The ROM 303 is aboot ROM, and stores a boot program of the system. The HDD 304 is a harddisk drive, and mainly stores information (system software) and imagedata required for activating and operating a computer. This data may bestored in a recording medium that can be stored and held even when apower supply is turned off, with no limitation to the HDD 304.

A LAN controller (LANC) 305 is connected to the LAN 314, and inputs andoutputs image data for output and information related to device controlto and from a user PC 315. A local interface 307 is an interface forUSB, Centronics, or the like, and is connected to a user PC 313, aprinter, or the like via a cable 312 to input/output data. A modem 308is connected to the public line 311 to input and output data. A printerinterface image processing unit 306 is connected to the printer 120 andcommunicates with a CPU mounted in the printer 120. The printerinterface image processing unit 306 performs synchronous/asynchronousconversion of image data and image processing for printing in accordancewith a command from the CPU 301. A scanner interface image processingunit 309 is connected to the scanner 140 and communicates with a CPUmounted in the scanner 140. In addition, the scanner interface imageprocessing unit 309 performs image processing such assynchronous/asynchronous conversion of image data, and a show-throughcorrection process which is described later. An operation unit interface310 is an interface for outputting image data to be displayed on theoperation unit 160 from the controller 200 to the operation unit 160,and for outputting information inputted from the operation unit 160 by auser of the copying machine to the controller 200.

FIG. 4 is a block diagram for describing a configuration of the scannerinterface image processing unit 309 according to the embodiment.

A shading correction unit 401 receives, as an input, a pixel signal Din(see FIG. 2) which indicates a luminance outputted by the scanner 140.The shading correction unit 401 performs shading correction processingon luminance unevenness due to the characteristics of the optical systemand the imaging system using a known technique so as to obtain imagedata of uniform brightness. A pixel signal Dsh thus subjected to theshading correction processing is outputted to a gamma correction unit402 which is a subsequent stage. The gamma correction unit 402 correctsa difference in color characteristics between a reading device (scanner)and an output device (printer) using a known technique. A pixel signalDg thus subjected to the gamma correction process is outputted to ashow-through correction unit 403 which is a subsequent stage.

When show-through has occurred in the read image data of the frontsurface of a document read by the scanner 140, the show-throughcorrection unit 403 executes a process of reducing the show-through.Note that the show-through correction unit 403 executes both generationof show-through correction information as an index of the show-throughcorrection, and a show-through correction process which uses theshow-through correction information. A pixel signal Du thus subjected tothe show-through correction process is outputted from the scannerinterface image processing unit 309, and written in the RAM 302 by amemory controller (not shown) to be temporarily stored.

FIG. 5 is a block diagram for describing a configuration of theshow-through correction unit 403 according to the embodiment.

A buffer 501 is a buffer for temporarily storing the pixel signal Dgwhich is to be inputted to the show-through correction unit 403. Becauseit is necessary to refer to a window of a predetermined size centered onthe pixel of interest in the calculation of a variance or an average andedge determination of the subsequent stage, the buffer 501 is used forforming this window. For example, in latter-stage processing, ifreference of a 5×5 window is necessary, the buffer size is 5 lines, andif reference of a 7×7 window is necessary, the buffer size is 7 lines.

A variance calculation unit 502 collectively receives pixel signals of awindow size required for calculation from the buffer 501, and executescalculation of the variance. The variance is calculated by the followingEquation (1).

$\begin{matrix}{\sigma^{2} = {\left( \frac{1}{N} \right){\sum\limits_{k = 1}^{k = N}\left( {{Xk} - {Xa}} \right)^{2}}}} & {{Equation}\mspace{14mu} (1)}\end{matrix}$

Where N represents the number of pixels within the window size. Xkdenotes the k-th pixel signal value in the window size, and Xa denotesthe average of the pixel signal values in the window size. Note that,because the variance tends to be a large value, the variance may besubstituted by the standard deviation (σ).

An average calculation unit 503 collectively receives pixel signals of awindow size required for calculation from the buffer 501, and executescalculation of the average. The average is calculated by the followingEquation (2).

$\begin{matrix}{{Xa} = {\left( \frac{1}{N} \right){\sum\limits_{k = 1}^{k = N}{Xk}}}} & {{Equation}\mspace{14mu} (2)}\end{matrix}$

The definition of each symbol in the Equation (2) is the same as that inthe Equation (1). Note that the window size necessary for calculatingthe average is the same as the window size necessary for calculating theabove-mentioned variance.

An edge determination unit 504 collectively receives pixel signalscorresponding to the window size required for calculation from thebuffer 501, and determines whether or not the pixel of interest is inthe edge region. Edge determination may be performed using a knowntechnique. More specifically, a Prewitt filter or a Sobel filter isapplied to a window centered on a pixel of interest, and it isdetermined whether or not there is an edge region based on a calculationresult and thresholds.

A variance-average storing control unit 505 controls writing of data toa variance-average storage unit 506, and readout of data from thevariance-average storage unit 506. The variance-average storage unit 506stores the average for each variance in the format of an LUT (lookuptable). For example, the variance becomes an address of the LUT, and anaverage corresponding to the variance is stored as data at the address.Note that the stored average is not the value calculated by the averagecalculation unit 503 unchanged, but a value adjusted by thevariance-average storing control unit 505. Details thereof will bedescribed later. Further, the variance-average storing control unit 505outputs the average read out from the variance-average storage unit 506to a correction value calculation unit 507.

Here, the average read out from the variance-average storage unit 506becomes the show-through correction information (in other words an indexfor show-through correction) in the embodiment. Incidentally, thedetails of the variance-average storing control unit 505, including whyit can be an index, will be described later with reference to FIG. 6.

The correction value calculation unit 507 calculates a correction valuefor correcting the pixel signal Dg. Specifically, a difference valueresulting from subtracting the average in the current region of interestcalculated by the average calculation unit 503 from the average based onthe show-through correction information Inf received from thevariance-average storing control unit 505 is obtained, and thedifference value is used as a correction value. Here, since the highest(brightest) average in the image data is stored as the average inaccordance with the show-through correction information Inf, thedifference from the average of the region of interest is always equal toor greater than “0”. This difference is outputted to a correction unit508 as a correction value. At this time, it is assumed that thecorrection value calculation unit 507 outputs a correction valueequivalent to a correction value of the neighboring non-edge portionwhen the edge determination unit 504 determines that there is an edgeregion.

Based on the correction information Inf received from the correctionvalue calculation unit 507, the correction unit 508 executes ashow-through correction process on the inputted pixel signal Dg. In thisshow-through correction process, for example, a correction value isadded to the luminance value of the pixel signal Dg to make the pixelsignal Dg brighter. If the inputted pixel signal is a pixel signal forwhich there is no show-through, the above-mentioned difference valuebecomes small and the correction information becomes small. In addition,instead of simply adding the correction value, correction may beperformed by applying a gain in accordance with an inputted pixel signalvalue. For example, the brighter the inputted pixel signal value is, themore susceptible it is to show-through, and therefore a gain may beapplied so that the brighter the pixel signal is, the stronger thecorrection is. The corrected pixel signal values are written to the RAM302 as Du.

The variance of a read halftone dot image has a distribution in whichthe vertex of a maximum value is 50% of the amount of halftone dots in aregion of interest (window size), and where the amount is 50% or more isthe same as where the amount is less than 50%. When the amount ofhalftone dots is 0% or 100%, the variance takes a minimum value. This isshown in FIG. 11.

FIG. 11 depicts a graph view showing a relationship among a halftone dotratio, a variance, and an average in a halftone dot image.

Referring to FIG. 11, the same variance is generated at differentaverages. However, here, it is sufficient if the show-through correctionprocessing is directed to less than 50% of the halftone dot ratio. Thatis, configuration may be taken to set a boundary where the density ofthe average becomes an intermediate density, and to perform correctionby targeting where the density of the average is less than or equal tothe boundary. This is because, if the density of the average is equal toor higher than the intermediate density, the density of the frontsurface will increase, and it is less likely to be affected byshow-through. In this way, the relationship between variance and averageis unique. Further, when the halftone dot ratio is a density of 50% ormore, it is sufficient if the correction value has a small gain.Processing in consideration of the halftone dot ratio is implemented inthe correction unit 508 described above.

Incidentally, in the embodiment, this processing is individuallyexecuted for each color. Therefore, the variance-average storage unit506 stores the average of each variance individually for each color. Inthis manner, even if the show-through component is a color (e.g., ashow-through component of a red character, or the like), the correctioncan be performed by having each color individually.

FIG. 10 is a diagram showing an example of an LUT generated by thevariance-average storage unit 506 according to the embodiment.

The variance in the first row indicates addresses of the LUT, and theaverages in the second row indicates the data stored in each address ofthe LUT. Here, the address of the LUT indicates the variance, but may besubstituted by the standard deviation (σ) in order to reduce thenumerical value. There is no change in that the standard deviation meansa numerical value that indicates a level of variation similarly tovariance.

Next, the relationship between the variance and the average stored inthis LUT will be described.

For example, the value indicated by the variance 0 (address 0) is eithera solid color portion or a paper white portion if the influence ofshow-through is not taken into consideration. Here, since the averagestored in the LUT is the numerically highest (brightest) average in theimage, the average stored in the address of the variance 0 inevitablybecomes the average of the paper white. Then, as the variance (address)gradually increases, the number of pixels of the halftone dot in theimage increases, and thus the average (luminance data) to be stored getslow (dark). Therefore, the data stored in each address of the LUT formedafter referring to the image of one page has a value as shown in FIG.10, for example.

The LUT may be configured so as to have dimensions corresponding to thenumber of colors, instead of having an individual LUT for each color.For example, in the case of three colors in RGB, the LUT may have athree-dimensional configuration formed by [R variance][G variance][Bvariance], where an average of each color is stored.

Next, the variance-average storing control unit 505 according to anembodiment will be described in detail with reference to FIG. 6.

FIG. 6 is a block diagram for describing a configuration of thevariance-average storing control unit 505 according to the embodiment.

A read controller 601 receives the variance Dv from the variancecalculation unit 502. Then, the read controller 601 accesses thevariance-average storage unit 506 with the received variance Dv as anaddress (Ad). In the embodiment, the variance-average storage unit 506stores an average (LUT data) for each variance (LUT address) in the LUTformat. Accordingly, the read controller 601 accesses thevariance-average storage unit 506 with the variance Dv as an address Adof the LUT. Then, the read controller 601 receives the LUT read data Drcorresponding to the address Ad of the LUT from the variance-averagestorage unit 506. This LUT read data Dr is inputted to each block to bedescribed later. Incidentally, the initial value of the LUT read data Dris set to “0”.

A write determination unit 602 receives the LUT read data Dr from theread controller 601, an average Dave of the window centered on the pixelof interest from the average calculation unit 503, and an edgedetermination result Ef from the edge determination unit 504, andexecutes a write determination. This write determination is adetermination as to whether or not to overwrite the LUT data held in theLUT address Ad read by the read controller 601. More specifically,first, referring to the edge determination result Ef, when it isdetermined that there is an edge region, not overwriting the LUT data isdetermined. This is because, in the edge region, the calculation resultof the variance around the pixel of interest is affected by the edge andit is inappropriate as an index of the show-through correction.

Next, referring to the edge determination result Ef, when it isdetermined that there is not the edge region, it is determined whetheror not the average Dave is larger than the LUT read data Dr. Here, whenthe average Dave is larger than the LUT read data Dr (that is, when theaverage of the pixel of interest window is brighter than the averagestored in the LUT), overwriting the LUT data is determined. On the otherhand, when the average Dave is equal to or less than the LUT read dataDr, not overwriting data is determined. The determination result isoutputted to a write controller 604 that is described later.

A write value calculation unit 603 receives the LUT read data Dr fromthe read controller 601, receives an average Dave of the window centeredon the pixel of interest from the average calculation unit 503, andexecutes processing to calculate a write value. This write value is avalue for overwriting the LUT data held in the LUT address Ad read bythe read controller 601.

FIG. 7 is a block diagram for describing a configuration of the writevalue calculation unit 603 according to the embodiment.

A subtracter 701 subtracts the LUT read data Dr from the average Dave tocalculate a difference value. However, when the LUT read data Dr islarger than the average Dave, a result of this calculation is set to“0”. A first additional value adjuster 702 multiplies theabove-mentioned difference value by an adjustment amount Sh1 and outputsthe result. A second additional value adjuster 703 multiplies theabove-mentioned difference value by an adjustment amount Sh2 and outputsthe result. Here, these adjustment amounts Sh1 and Sh2 are both valuesof 1 or less. Therefore, the outputs from the adjusters 702 and 703 arethe same (when the adjustment amounts Sh1 and Sh2 are 1) or a smallervalue (when the adjustment amounts Sh1 and Sh2 is less than 1), withrespect to the above-mentioned difference value. Here, an intention formultiplying the adjustment amount to obtain a small value is to reducethe effect of impurities, which will be described later with referenceto FIG. 8. Note that the adjustment amount Sh1 or Sh2 may be aright-shift amount with respect to the difference value. That is, whenthe shift amount is 1, the multiplication result is ½ of the differencevalue, and when the shift amount is 2, the multiplication result is ¼ ofthe difference value. In this way, it is possible to reduce the circuitcost of an additional value adjuster. Results of multiplication by thefirst additional value adjuster 702 and the second additional valueadjuster 703 are outputted to the additional value selector 704.

The additional value selector 704 selects one of the multiplicationresults of the first additional value adjuster 702 and the secondadditional value adjuster 703, and outputs the selected multiplicationresult. First, the additional value selector 704 determines whether ornot the inputted multiplication result is equal to or larger than athreshold Th. If the multiplication result is equal to or larger thanthe threshold Th, the multiplication result of the first additionalvalue adjuster 702 is selected, and the selected value is outputted tothe subsequent stage. If the multiplication result is less than thethreshold Th, the multiplication result of the second additional valueadjuster 703 is selected, and the selected value is outputted to thesubsequent stage. An adder 705 performs a process of adding themultiplication result outputted from the additional value selector 704to the LUT read data Dr, and outputs the result of this addition. Thisoutput result is a write value to the LUT that is outputted by the writevalue calculation unit 603.

Next, the write controller 604 of FIG. 6 refers to the determinationresult of the write determination unit 602 and the write value of thewrite value calculation unit 603, and performs write control withrespect to the LUT. If the determination result of the writedetermination unit 602 is “perform overwriting of LUT data” here, thewrite controller 604 executes writing of the write value to the LUTaddress Ad accessed by the read controller 601 earlier. That is, thewrite value outputted from the write value calculation unit 603 isoutputted to the variance-average storage unit 506 as LUT write data Dw.The LUT data corresponding to the LUT address Ad is overwritten in thismanner. As a result, the calculation result relating to the brightestaverage luminance value is always held in the LUT data for the regionshowing the same variance of the window centered on the pixel ofinterest. The calculation result of the brightest average luminancevalue indicates the luminance information of the region that does nothave show-through, and is used for the calculation of the correctionvalue at a subsequent stage.

An output unit 605 refers to the LUT read data Dr, the writedetermination result, and the calculation result of the write value, andoutputs the show-through correction information Inf (an index forshow-through correction) to the correction unit 508. When thedetermination result of the write determination unit 602 is “performoverwriting of LUT data”, the output unit 605 outputs the valueoutputted by the write value calculation unit 603 to the correctionvalue calculation unit 507 as the show-through correction informationInf. When the determination result of the write determination unit 602is “do not perform overwriting of LUT data”, the output unit 605 outputsthe LUT read data Dr outputted by the read controller 601 to thecorrection value calculation unit 507 as the show-through correctioninformation Inf.

Next, the detailed meaning of the data (show-through correctioninformation) stored in the variance-average storage unit 506 will bedescribed with reference to FIG. 8.

FIG. 8 is a diagram for describing an example of read image data 800 ofa front surface of a document read by the scanner 140 according to theembodiment.

A high density image 801 and a halftone-processed image 802 representedby halftone dots are printed on the front surface of an actual document.It is also assumed that an image similar to the high density image 801exists on the back surface of the document. At this time, in the readimage data 800 of the front surface of the document read by the scanner140, a high density image existing on the back surface of the documentbecomes as a show-through image 803.

Attention is paid to each region of the read image data 800. Firstly, aregion of the halftone-processed image 802 is focused on and illustratedas a halftone region of interest 806. Since the halftone region ofinterest 806 has a halftone dot structure, pixels are divided into thosein regions in which there is a halftone dot, and those in regions inwhich there is no halftone dot. Here, these regions are divided by apredetermined window size, and the luminance variance and the luminanceaverage are calculated to thereby obtain a variance X2 and an averageY2.

Next, a region of the show-through image 803 is focused on andillustrated as a show-through region of interest 804. In theshow-through region of interest 804, these regions are divided by apredetermined window size, and the luminance variance and the luminanceaverage are calculated to thereby obtain a variance X1 and an averageY3. Here, the luminance variance X1 obtained in the show-through regionof interest 804 is a small value. This is because only a low-frequencycomponent of the image on the back surface is likely to appear as ashow-through component (an image component obtained through the paper).Therefore, even if the image on the back surface is drawn by thehalftone dots, there are many cases where show-through occurs withoutuneven luminance for the show-through component as with the show-throughregion of interest 804, and as a result, the luminance variance becomesa small value.

Further, in the read image data 800, a luminance variance and luminanceaverage obtained by dividing a paper white region, on which nothing hasbeen printed and for which there is no show-through, by a predeterminedwindow size are set as X1 and Y4 respectively. Here, since theshow-through component tends not to affect the luminance variance asdescribed above, the luminance variance of the paper white region andthe luminance variance obtained from the region of the show-throughimage 803 tend to be similar values. Here, this luminance variance isset to X1.

Next, a region in which the halftone-processed image 802 and theshow-through image 803 overlap with each other is given attention andillustrated as an overlapping region of interest 805. Since theoverlapping region of interest 805 has a halftone dot structure, pixelsare divided into those in regions in which there is a halftone dot, andthose in regions in which there is no halftone dot. However, since thisoverlapping region is affected by the show-through image, it has a pixelvalue which is dark (low in value) overall. In the overlapping region ofinterest 805, these regions are divided by a predetermined window size,and the luminance variance and the luminance average are calculated tothereby obtain a variance X2 and an average Y1. Here, since theshow-through component tends not to affect the luminance variance asdescribed above, the luminance variance of the overlapping region ofinterest 805 and the luminance variance obtained from the halftoneregion of interest 806 of the halftone-processed image 802 that did nothave show-through are likely to have similar values. Here, thisluminance variance is set to X2.

Next, processing for obtaining an index in the show-through correction(show-through correction information) will be described using theabove-described luminance variances X1 and X2 and the luminance averagesY1 to Y4. The variances X1, X2 and the luminance averages Y1 to Y4 aregraphically illustrated in FIG. 9.

FIG. 9 is a diagram showing a relationship between a variance and anaverage of luminance values of read image data.

In FIG. 9, coordinates (X1, Y4) indicate a paper white region,coordinates (X1, Y3) indicate a show-through region of interest 804,coordinates (X2, Y2) indicate a halftone region of interest 806, andcoordinates (X2, Y1) indicate an overlapping region of interest 805. Inother words, it can be said that the paper white region is thecoordinates (X1, Y4), and the coordinates (X1, Y3) are whereshow-through occurs in the paper white region. In other words, it can besaid that the halftone region of interest 806 is the coordinates (X2,Y2), and the coordinates (X2, Y1) are where show-through occurs in thehalftone region.

Therefore, when the pixel of interest is corrected using the differencevalue between Y3 and Y4 in the show-through region of interest 804, thesignal value of the show-through region is corrected to the signal valueof the paper white region, and show-through correction is appropriatelyperformed. Therefore, when the pixel of interest is corrected using thedifference value between Y1 and Y2 in the overlapping region of interest805, the signal value of the overlapping region is corrected to thesignal value of the halftone region of interest, and show-throughcorrection is appropriately performed. In other words, at each variance,the average of a region where there is no show-through can be used as anindex for correcting the show-through (that is, the show-throughcorrection information).

This index is the show-through correction information Inf that theoutput unit 605 outputs to the correction value calculation unit 507. Asdescribed with reference to FIG. 6, the average and the variance of apixel of interest window are sequentially calculated and compared withthe brightest calculation result (the value held in the LUT for eachvariance) for a region in which the same variance was indicated in thepast, to thereby make it possible to obtain this index.

Here, the variance depends on the amount of halftone dots in the regionof interest. The amount of halftone dots is uniquely decided accordingto the density to be printed. Therefore, by storing the average forwhere there is no show-through of each variance, even when ashow-through region or a region in which show-through and a halftone doton the front surface overlap occurs, the show-through can beappropriately corrected by correcting the signal value using the storedaverage as an index. “Storing the average for each variance” means, inother words, “storing the average for each halftone dot amount”.

Here, in order to obtain an appropriate index, it is necessary to obtainan average for where there is no show-through. In order to easily obtainthis, in the embodiment, as described with respect to thevariance-average storage unit 506, the highest average for each variancein the input image data is used as an index. This utilizes the fact thatregions that do not have show-through can have a higher (brighter)average than show-through regions. Since an entire halftone dot regionin the input image data is rarely included in a show-through region, inmost cases there is a halftone dot region for which there is noshow-through, and thus even if such a method were employed, it should beable to sufficiently withstand actual use.

Further, as in the embodiment, even when, from out of the inputted imagedata, the brightest average in image regions processed in the pastbefore the pixel of interest currently being processed is reached isused as the show-through correction information, it is possible to storeappropriate show-through correction information. This is because it israre for only show-through regions to consecutively continue in anactual document, and it can be considered to be able to withstand actualuse regardless of the form of the embodiment.

Next, a case where a document has impurities will be considered.

In FIG. 8, a minute impurity 807 such as a fiber of a document hasoccurred on the front surface of the document.

A place where attention is given to the impurity 807 is shown as animpurity region of interest 808. The impurity region of interest 808includes a pixel region in which the luminance value has darkened due tothe impurity and pixel regions in which the luminance value is not dark.At this time, when the luminance variance is calculated using theimpurity region of interest 808 as the region of interest, the luminancevariance is obtained in accordance with the luminance difference ofpixel regions as described above. Further, since this region of interestincludes a high proportion of a paper white region, when the luminanceaverage is calculated for this region, a large bright average is oftenobtained. Therefore, there is a possibility that this calculation resultwill be stored in the LUT of the variance-average storage unit 506 as anindex for correcting erroneous show-through. When such data is stored inthe LUT, the calculation result of the correction value in thecorrection value calculation unit 507 becomes unnecessarily large, whichis a result that leads to overcorrection or false correction ofshow-through. If the edge determination unit 504 can determine that sucha region of interest is an edge region, such an adverse effect can beprevented. However, the impurity 807 is small, and its luminance valuedoes not have a large difference as compared with the luminance value ofa paper white region. Therefore, in the edge determination process asdescribed with the edge determination unit 504, it is difficult toperform an appropriate process of determining the impurity region as theedge portion while not determining a halftone dot region as the edgeportion.

Therefore, in the embodiment, as described with reference to FIG. 7, thewrite value calculation unit 603 is provided with the additional valueadjusters 702 and 703, so that the data to be overwritten on the LUT isadjusted to reduce the influence of impurities. In addition, the normalindex value for the show-through correction is also affected by theadditional value adjustment processing, but the same luminance variancecan be obtained many times for uniform halftone dot regions in thedocument, so that the effect of the show-through correction is notremarkably lowered. This will be described with reference to FIGS. 12Ato 12C.

FIGS. 12A to 12C are diagrams illustrating an example of updating avariance-average storage unit (an LUT) in the embodiment.

In FIGS. 12A to 12C, the abscissa represents the count of overwriting ofthe LUT of the variance-average storage unit 506, and the vertical axisrepresents the value of overwriting. In other words, the abscissarepresents the number of writes by the write controller 604, and theordinate represents the LUT write data Dw at the time of thecorresponding write. FIGS. 12A to 12C show an example of focusing on aspecific address of the LUT (in other words, a specific luminancevariance).

First, FIG. 12A shows an example of a case where there is no influenceof impurities. At this time, in the halftone region of interest 806 thathas no show-through in FIG. 8, an average which can be an index of theshow-through correction is calculated and written in the LUT. At thistime, if the calculated average is “100”, the value written in the LUTbecomes a numerical value of “100” or less in accordance with theadjustment processing of the first additional value adjuster 702 or thesecond additional value adjuster 703. For example, when the adjustmentamounts Sh1 and Sh2 are “0.25”, the first write data is 100×0.25 whichis “25”. In this case, the effect of the show-through correction appearsto have deteriorated, but this is not the case because there are manysuch halftone regions inside the image data 800. By repeatedly payingattention to and processing the same halftone region two or three times,the value written in the LUT approaches “100” which is the originalaverage. In FIG. 12A, it can be seen that when writing is performedabout 10 times, the value is nearly “100”.

FIG. 12B shows an example of a case where there is an influence of animpurity. This example shows the case where the third write data is theimpurity region of interest 808. For example, when the calculatedaverage of the impurity region of interest 808 is “200” and theadjustment amount is “0.25” as in FIG. 12A, the third write data is avalue smaller than “100”, as shown in FIG. 12B. That is, the influenceof impurities can be removed by the adjustment process. Thereafter,similarly to FIG. 12A, every time the writing to the LUT is repeated,the index of the show-through correction approaches “100”.

FIG. 12C shows a different example of a case where there is an influenceof an impurity. This example shows the case where the eighth write datais the impurity region of interest 808. For example, when the calculatedaverage of the impurity region of interest 808 is “200” and theadjustment amount is “0.25” as in FIG. 12A, the eighth write data is avalue larger than “100”, as shown in FIG. 12C. However, the value issmaller than the average “200” calculated in the impurity region ofinterest 808. That is, the influence of impurities can be reduced by theadjustment process. Thereafter, the calculation of the average isrepeated in the halftone region of interest 806, but since its valuebecomes smaller than the current value of the LUT, the writing of theLUT is not executed.

As described above, the influence of impurities can be reduced by theadjustment processing of the first additional value adjuster 702 or thesecond additional value adjuster 703. In addition, since halftone dotregions occupies a larger proportion of the page than impurities, inother words, since the number of repetitions is larger for halftoneregions than impurity regions, the effect of correction of show-throughcan be maintained even in such adjustment processing.

Note that, when the current region of interest is an impurity region, asshown in FIGS. 12A to 12C, there is a tendency for a large valueseparated from a value already stored in the LUTs to often be calculatedas the average Dave (i.e., the difference value by the subtracter 701 islarge). Therefore, a small value close to “0” is set to the firstcoefficient, and a large value close to “1” is set to the secondcoefficient. Alternatively, configuration may be taken to set the samevalue for the first coefficient and the second coefficient, and alwaysperform a calculation using a constant coefficient regardless of thedifference value.

As described above, according to the embodiment, by implementing thewrite value calculation unit 603, it is possible to reduce the influenceof an impurity which has adhered to the document while maintaining theeffect of a show-through correction.

FIG. 13 is a flowchart for describing a show-through correction processin the copying machine according to the embodiment. Note that processingshown in this flowchart is realized by the CPU 301 deploying a programstored in the HDD 304 to the RAM 302 and executing the deployed program.In addition, in this description, an example is described in which theCPU 301 realizes the functions of the scanner interface image processingunit 309 described above by the CPU 301 executing a program, but thefunctions of the scanner interface image processing unit 309 may berealized by hardware, for example.

First, in step S1301, the CPU 301 executes edge detection processing onread image data. This is executed by, for example, the edgedetermination unit 504 which is described above, referring to a window(output of the buffer 501) centered on a pixel of interest of the readimage data, and detecting an edge by a known technique. Next, theprocessing proceeds to step S1302, and the CPU 301 refers to an edgedetermination result of step S1301 and determines whether or not thepixel of interest is an edge portion. Here, when it is determined thatthe window is the edge portion, the processing proceeds to step S1309,and when it is determined that the window is not the edge portion, theprocessing proceeds to step S1303. In step S1309, the CPU 301 executes aprocess of correcting the edge portion. For example, a correction valueof a neighboring non-edge portion is referred to, and the correctionvalue is added to a signal value (luminance value) of an inputted pixelto brighten the pixel signal Du. Then, this processing ends.

In step S1303, the CPU 301 executes a calculation of the variance andthe average. This is executed by, for example, the variance calculationunit 502 and the average calculation unit 503 described above. The CPU301 refers to a window (the outputs of the buffer 501) centered on thepixel of interest of the read images. Then, the CPU 301 calculates avariance, which is a degree of variation in the signal values of theplurality of pixels, and an average of brightness, which is a featureamount indicating the brightness of the window. The CPU 301 thenproceeds to step S1304 where it reads out the data from the LUT of thevariance-average storage unit 506. This is executed by, for example, theread controller 601 of the above-mentioned variance-average storingcontrol unit 505, and therefore the address of the LUT at the time ofreading is the variance calculated in step S1303.

Then, proceeding to step S1305, the CPU 301 compares the value read outfrom the LUT in step S1304 with the average calculated in step S1303,and determines whether or not the calculated average is larger than thevalue read out. Here, if the readout value is larger than the calculatedaverage, the processing proceeds to step S1307, and if the calculatedaverage is larger, the processing proceeds to step S1306. In step S1306,the CPU 301 writes the calculated average to the LUT of thevariance-average storage unit 506, and the processing proceeds to stepS1307. This writing is executed, for example, by the above-describedvariance-average storing control unit 505. Note that the processing ofthis step S1306 will be described in detail later by referring to theflow chart of FIG. 14.

Next, in step S1307, the CPU 301 calculates a correction value for theshow-through. This is executed, for example, by the correction valuecalculation unit 507 described above, and the difference value betweenthe show-through correction information and the average calculated instep S1303 is obtained, and the difference value is decided as thecorrection value. Note that, if step S1306 is not executed, the dataread out from the LUT in step S1304 becomes the show-through correctioninformation, and if step S1306 is executed, the data written in stepS1306 becomes the show-through correction information.

Then, the processing proceeds to step S1308, and the CPU 301 executesthe show-through correction process on the inputted pixel (the pixel ofinterest in step S1301) and ends this process. This is executed by, forexample, the correction unit 508 described above. Based on thecorrection value calculated in step S1307, for example, the pixel signalDg is brightened by adding the correction value to the signal value(luminance value) of the inputted pixel. Alternatively, the inputtedsignal value of the pixel may be multiplied by a gain corresponding tothe correction value.

FIG. 14 is a flowchart for describing the process of writing to a LUT ofstep S1306 of FIG. 13.

First, in step S1401, the CPU 301 subtracts, for example, the LUT readdata Dr read out by the above-described read controller 601 in stepS1304 from the average Dave calculated by the above-described averagecalculation unit 503 in step S1303, and to calculate the differencevalue therebetween, for example. This processing is executed by, forexample, the subtracter 701 described above. Next, the processingproceeds to step S1402, and the CPU 301 determines whether or not thedifference value calculated in step S1401 is equal to or larger than thethreshold Th. This determination processing is executed by, for example,the additional value selector 704 described above. If the differencevalue is equal to or larger than the threshold Th, the process proceedsto step S1403, and if the difference value is smaller than the thresholdTh, the process proceeds to step S1404. In step S1403, the CPU 301performs the updating by multiplying the first coefficient and thedifference value calculated in step S1401 by, for example, theabove-mentioned first additional value adjuster 702, and the processingproceeds to step S1405. In step S1404, updating is performed bymultiplying the second coefficient and the difference value calculatedin step S1401 by, for example, the above-mentioned second additionalvalue adjuster 703, and the processing proceeds to step S1405. Asdescribed above, these coefficients have a value of 1 or less, and theinfluence of an impurity of the document can be reduced by thiscoefficient processing. Since there are many more halftone dot regionswhich do not have show-through than the impurity regions, the effect ofthe show-through correction can also be maintained.

In step S1405, the CPU 301 adds, for example, the coefficient-processeddifference value outputted from the above-described additional valueselector 704 to the LUT read data Dr. This addition processing isexecuted by, for example, the adder 705 described above, and the resultof this addition is written as LUT write data Dw to the variance-averagestorage unit 506. Note that the address to be written at this time is,for example, the LUT address Ad read out by the read controller 601described above in step S1304. The written value is used in step S1307as the show-through correction information.

As described above, according to the embodiment, even when impuritiessuch as paper fibers occur in a read document, the influence of theimpurities can be reduced, and show-through correction data can beappropriately calculated. Therefore, it is possible to appropriatelycorrect a show-through region while reducing the deterioration of theimage quality of a front surface.

Other Embodiments

Embodiments of the present invention can also be realized by a computerof a system or apparatus that reads out and executes computer executableinstructions (e.g., one or more programs) recorded on a storage medium(which may also be referred to more fully as a ‘non-transitorycomputer-readable storage medium’) to perform the functions of one ormore of the above-described embodiments and/or that includes one or morecircuits (e.g., application specific integrated circuit (ASIC)) forperforming the functions of one or more of the above-describedembodiments, and by a method performed by the computer of the system orapparatus by, for example, reading out and executing the computerexecutable instructions from the storage medium to perform the functionsof one or more of the above-described embodiments and/or controlling theone or more circuits to perform the functions of one or more of theabove-described embodiments. The computer may comprise one or moreprocessors (e.g., central processing unit (CPU), micro processing unit(MPU)) and may include a network of separate computers or separateprocessors to read out and execute the computer executable instructions.The computer executable instructions may be provided to the computer,for example, from a network or the storage medium. The storage mediummay include, for example, one or more of a hard disk, a random-accessmemory (RAM), a read only memory (ROM), a storage of distributedcomputing systems, an optical disk (such as a compact disc (CD), digitalversatile disc (DVD), or Blu-ray Disc (BD)™), a flash memory device, amemory card, and the like.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all such modifications and equivalent structures andfunctions.

This application claims the benefit of Japanese Patent Application No.2019-004622, filed Jan. 15, 2019, which is hereby incorporated byreference herein in its entirety.

What is claimed is:
 1. An image processing apparatus, comprising: amemory device that stores instructions; and at least one processor thatexecutes the instructions stored in the memory device to cause the imageprocessing apparatus to function as: a first obtaining unit configuredto obtain a degree of variation in signal values of a plurality ofpixels included in a region of a predetermined size that includes apixel of interest of image data obtained by reading a document on whicha halftone-processed image has been printed; a second obtaining unitconfigured to obtain a feature amount indicating a brightness of theregion; an updating unit configured to, with respect to a plurality ofindex values respectively corresponding to a plurality of mutuallydifferent degrees of variation, in accordance with whether or not adifference between the feature amount obtained by the second obtainingunit and an index value corresponding to the degree of variationobtained by the first obtaining unit is larger than a predeterminedthreshold, update the difference; a decision unit configured to decide acorrection value of the pixel of interest using the difference updatedby the updating unit and the index value corresponding to the degree ofvariation; and a correction unit configured to correct a value of thepixel of interest using the correction value decided by the decisionunit.
 2. The image processing apparatus according to claim 1, whereinthe updating unit updates the difference by multiplying the differenceby a first coefficient in a case where the difference is equal to orgreater than the predetermined threshold, and multiplying the differenceby a second coefficient that is greater than the first coefficient in acase where the difference is less than the predetermined threshold. 3.The image processing apparatus according to claim 2, wherein the firstcoefficient and the second coefficient are values that are equal to orless than
 1. 4. The image processing apparatus according to claim 1,wherein the decision unit decides a correction value of the pixel ofinterest by adding the difference updated by the updating unit to theindex value corresponding to the degree of variation.
 5. The imageprocessing apparatus according to claim 1, wherein the at least oneprocessor that executes the instructions to further function as adetermination unit configured to determine whether or not the regionincludes an edge portion wherein, in a case where the determination unitdetermines that the region includes the edge portion, the correctionunit corrects a value of the pixel of interest using the correctionvalue of a neighboring region that does not include the edge portion. 6.The image processing apparatus according to claim 1, wherein an indexvalue corresponding to the degree of variation is held in a lookup table(LUT) that associates the degree of variation with the index value thatcorresponds to the degree of variation.
 7. The image processingapparatus according to claim 1, wherein the feature amount is an averageof a plurality of signal values that indicate brightnesses of respectivepixels included in the region.
 8. The image processing apparatusaccording to claim 1, wherein the degree of variation is a variance or astandard deviation of signal values of a plurality of pixels included inthe region.
 9. An image processing method, comprising: obtaining adegree of variation in signal values of a plurality of pixels includedin a region of a predetermined size that includes a pixel of interest ofimage data obtained by reading a document on which a halftone-processedimage has been printed; obtaining a feature amount indicating abrightness of the region; with respect to a plurality of index valuesrespectively corresponding to a plurality of mutually different degreesof variation, updating a difference between the obtained feature amountand an index value corresponding to the obtained degree of variation inaccordance with whether or not the difference is larger than apredetermined threshold; deciding a correction value of the pixel ofinterest using the updated difference and the index value correspondingto the degree of variation; and correcting a value of the pixel ofinterest using the decided correction value.
 10. A non-transitorycomputer-readable storage medium storing a program for causing aprocessor to execute an image processing method, the method comprising:obtaining a degree of variation in signal values of a plurality ofpixels included in a region of a predetermined size that includes apixel of interest of image data obtained by reading a document on whicha halftone-processed image has been printed; obtaining a feature amountindicating a brightness of the region; with respect to a plurality ofindex values respectively corresponding to a plurality of mutuallydifferent degrees of variation, updating a difference between theobtained feature amount and an index value corresponding to the obtaineddegree of variation in accordance with whether or not the difference islarger than a predetermined threshold; deciding a correction value ofthe pixel of interest using the updated difference and the index valuecorresponding to the degree of variation; and correcting a value of thepixel of interest using the decided correction value.